home *** CD-ROM | disk | FTP | other *** search
- class Main extends State
- {
- var mcRef;
- var sSection;
- var oController;
- var oDynamicPack;
- var bQuitting;
- var bFinished;
- var bCheatClothesActivated;
- var bMustSendScore;
- var bEasterEgg;
- var oShadow;
- var sState;
- var game;
- var sStartDynamic;
- var sLastState;
- var oEndScreen;
- static var oRef;
- static var PACKAGING_SECTION = "Packaging";
- static var GAME_SECTION = "Game";
- static var sSTATE_INIT = "Init";
- static var sSTATE_PACKAGING = "Packaging";
- static var sSTATE_GAME = "Game";
- static var sSTATE_WIN = "WinScreen";
- static var sSTATE_LOSE = "LoseScreen";
- static var sSTATE_RESET = "Reset";
- static var sSTATE_INSTRUCTIONS = "Instructions";
- static var nFRAME_RATE = 35;
- function Main(_mcRef)
- {
- super(_mcRef,false);
- Stage.showMenu = false;
- Main.oRef = this;
- this.mcRef.onEnterFrame = Delegate.create(this,this.enterFrame);
- this.sSection = Main.PACKAGING_SECTION;
- this.oController = new Controller(this.mcRef);
- this.oDynamicPack = null;
- this.bQuitting = false;
- this.bFinished = false;
- this.bCheatClothesActivated = false;
- this.bMustSendScore = false;
- this.bEasterEgg = false;
- this.oShadow = new Shadow(this.mcRef.mcShadow);
- this.sState = Main.sSTATE_INIT;
- this.oController.playMusicLoop(Main.PACKAGING_SECTION);
- }
- function doHide()
- {
- this.mcRef.visible = false;
- }
- function doShow()
- {
- this.mcRef.visible = true;
- }
- function winGame()
- {
- this.bFinished = true;
- CTRLGame.getRef().Screen.getInterface().pauseTime();
- if(CTRLGame.getRef().Level == CTRLGame.nLEVEL1)
- {
- this.calculateScore();
- this.oController.goToNewLevel(this.game.Screen.getInterface().mcRef.mcSongs._currentframe);
- }
- else
- {
- this.oController.goTo(Main.sSTATE_WIN,this);
- }
- }
- function loseGame()
- {
- this.bFinished = true;
- CTRLGame.getRef().Screen.getInterface().pauseTime();
- this.oController.goTo(Main.sSTATE_LOSE,this);
- }
- function startNewLevel()
- {
- this.bFinished = false;
- var _loc2_ = CTRLGame.getRef().Level;
- var _loc3_ = CTRLGame.getRef().Score;
- this.game.cleanUp();
- delete this.game;
- this.game = null;
- this.game = new CTRLGame(this.mcRef.mcState,_loc3_,_loc2_ + 1);
- this.game.Screen.getInterface().doShow();
- }
- function updateScoreField()
- {
- if(this.sState == Main.sSTATE_GAME)
- {
- CTRLGame.getRef().Screen.getInterface().setScoreValue(CTRLGame.getRef().Score);
- }
- else if(this.sState == Main.sSTATE_WIN || this.sState == Main.sSTATE_LOSE)
- {
- this.mcRef.mcState.txtScore.text = Utils.styleNumber(CTRLGame.getRef().Score);
- }
- }
- function doPause()
- {
- }
- function doUnPause()
- {
- }
- function onRestartButton()
- {
- this.resetForNewGame();
- this.sStartDynamic = ScrollingPanel.sSTATE_TITLE;
- this.oController.goTo(Main.sSTATE_PACKAGING,this);
- }
- function onHighScoresButton()
- {
- if(this.sState != Main.sSTATE_PACKAGING)
- {
- this.resetForNewGame();
- }
- this.bMustSendScore = false;
- this.sStartDynamic = ScrollingPanel.sSTATE_HIGHSCORES;
- this.oController.goTo(Main.sSTATE_PACKAGING,this);
- }
- function rollOverButton()
- {
- this.oController.playRollOverSound();
- }
- function clickPlayButton()
- {
- this.oController.playClickSound();
- this.oController.goTo(Main.sSTATE_GAME,this);
- }
- function clickInstructionsButton()
- {
- this.oController.playClickSound();
- this.oController.goTo(Main.sSTATE_INSTRUCTIONS,this);
- }
- function clickMenuButton()
- {
- this.oController.playClickSound();
- this.oController.getMenu().doShow();
- }
- function clickQuitButton()
- {
- this.oController.playClickSound();
- this.bQuitting = true;
- this.loseGame();
- }
- function clickSubmitScore()
- {
- this.oController.playClickSound();
- this.bMustSendScore = true;
- this.resetForNewGame();
- this.sStartDynamic = ScrollingPanel.sSTATE_HIGHSCORES;
- this.oController.goTo(Main.sSTATE_PACKAGING,this);
- }
- function clickRestartButton()
- {
- this.oController.playClickSound();
- this.onRestartButton();
- }
- function clickHighScoresButton()
- {
- this.oController.playClickSound();
- this.onHighScoresButton();
- }
- function setState(_sState)
- {
- this.sLastState = this.sState;
- super.setState(_sState);
- this.initState(_sState);
- }
- function showHighScoreStuff(_btnSubmit)
- {
- _global.HS.initHiScores();
- if(_global.gProxyObj.getIsLoggedIn())
- {
- _btnSubmit._visible = true;
- }
- else
- {
- _btnSubmit._visible = false;
- }
- if(_global.HS.G_ShowHighScore == false)
- {
- _btnSubmit._visible = false;
- _btnSubmit._visible = false;
- }
- }
- function setCheatClothes(_bActive)
- {
- this.bCheatClothesActivated = _bActive;
- }
- function setMustSendScore(_bMustSend)
- {
- this.bMustSendScore = _bMustSend;
- }
- function isCheatClothesActivated()
- {
- return this.bCheatClothesActivated;
- }
- function getSection()
- {
- return this.sSection;
- }
- function get Finished()
- {
- return this.bFinished;
- }
- function get MustSendScore()
- {
- return this.bMustSendScore;
- }
- function get EasterEgg()
- {
- return this.bEasterEgg;
- }
- function setEasterEgg(_bEasterEgg)
- {
- this.bEasterEgg = _bEasterEgg;
- }
- static function getRef()
- {
- return Main.oRef;
- }
- function Init()
- {
- if(this.mcRef.mcState.mcLoading._currentframe == this.mcRef.mcState.mcLoading._totalframes)
- {
- this.setState(Main.sSTATE_PACKAGING);
- this.sStartDynamic = ScrollingPanel.sSTATE_TITLE;
- }
- }
- function Packaging()
- {
- }
- function Game()
- {
- if(Controller.getRef().isPaused() || CTRLGame.getRef().Screen.isInMiniGame())
- {
- if(!this.oShadow.isVisible())
- {
- this.oShadow.doShow();
- }
- }
- else if(this.oShadow.isVisible())
- {
- this.oShadow.doHide();
- }
- }
- function LoseScreen()
- {
- }
- function WinScreen()
- {
- }
- function calculateScore()
- {
- if(!this.bQuitting)
- {
- var _loc2_ = CTRLGame.getRef().Songs / Main.nFRAME_RATE;
- if(_loc2_ - Math.round(_loc2_) != 0)
- {
- _loc2_ = Math.round(_loc2_);
- _loc2_ = _loc2_ + 1;
- }
- else
- {
- _loc2_ = Math.round(_loc2_);
- }
- CTRLGame.getRef().addToScore(_loc2_ * LD.nSECOND_LEFT_VALUE);
- }
- }
- function initState(_sState)
- {
- switch(_sState)
- {
- case Main.sSTATE_PACKAGING:
- if(this.sLastState == Main.sSTATE_INIT)
- {
- this.oDynamicPack = new DynamicPack(this.mcRef.mcState,DynamicPack.sSTATE_ENTER,this.sStartDynamic);
- }
- else
- {
- this.oDynamicPack = new DynamicPack(this.mcRef.mcState,DynamicPack.sSTATE_IDLE,this.sStartDynamic);
- }
- break;
- case Main.sSTATE_GAME:
- if(this.sSection == Main.PACKAGING_SECTION)
- {
- this.oDynamicPack.cleanUp();
- delete this.oDynamicPack;
- this.oDynamicPack = null;
- this.game = new CTRLGame(this.mcRef.mcState,0,1);
- this.oController.playMusicLoop(Main.GAME_SECTION);
- Controller.getRef().getStartPop().doInstantShow();
- }
- this.sSection = Main.GAME_SECTION;
- break;
- case Main.sSTATE_WIN:
- CTRLGame.getRef().addToScore(LD.nWIN_BONUSPOINTS);
- case Main.sSTATE_LOSE:
- this.calculateScore();
- this.oController.playMusicLoop(Main.PACKAGING_SECTION);
- this.sSection = Main.PACKAGING_SECTION;
- this.oEndScreen = new EndScreen(this.mcRef.mcState);
- CTRLGame.getRef().Screen.getInterface().doHide();
- this.oController.getMenu().doInstantHide();
- this.oShadow.doInstantHide();
- }
- }
- function enterFrame()
- {
- MainBroadcaster.Instance.doAction();
- Broadcaster.Instance.doAction();
- }
- function resetForNewGame()
- {
- Broadcaster.Instance.flushBroadcaster();
- this.oEndScreen.cleanUp();
- delete this.oEndScreen;
- this.oController.resetForNewGame();
- this.game.cleanUp();
- delete this.game;
- this.game = null;
- this.bQuitting = false;
- this.bFinished = false;
- }
- }
-